home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / linux / ioctl32.h < prev    next >
C/C++ Source or Header  |  2005-10-13  |  897b  |  38 lines

  1. #ifndef IOCTL32_H
  2. #define IOCTL32_H 1
  3.  
  4. struct file;
  5.  
  6. typedef int (*ioctl_trans_handler_t)(unsigned int, unsigned int,
  7.                     unsigned long, struct file *);
  8.  
  9. struct ioctl_trans {
  10.     unsigned long cmd;
  11.     ioctl_trans_handler_t handler;
  12.     struct ioctl_trans *next;
  13. };
  14.  
  15. /* 
  16.  * Register an 32bit ioctl translation handler for ioctl cmd.
  17.  *
  18.  * handler == NULL: use 64bit ioctl handler.
  19.  * arguments to handler:  fd: file descriptor
  20.  *                        cmd: ioctl command.
  21.  *                        arg: ioctl argument
  22.  *                        struct file *file: file descriptor pointer.
  23.  */ 
  24.  
  25. #ifdef CONFIG_COMPAT
  26. extern int register_ioctl32_conversion(unsigned int cmd,
  27.                 ioctl_trans_handler_t handler);
  28. extern int unregister_ioctl32_conversion(unsigned int cmd);
  29.  
  30. #else
  31.  
  32. #define register_ioctl32_conversion(cmd, handler)    ({ 0; })
  33. #define unregister_ioctl32_conversion(cmd)        ({ 0; })
  34.  
  35. #endif
  36.  
  37. #endif
  38.